#ifndef STATUS_ENUM_H
#define STATUS_ENUM_H

typedef enum {
        STATUS_SUCCESS = 0,              /** Operation successful */
        STATUS_ERROR,                    /** Operation failed */
        STATUS_PENDING,                  /** Operation pending */
        STATUS_IN_PROGRESS,              /** Operation in progress */
        STATUS_NOT_FOUND,                /** Not found */
        STATUS_TIMEOUT,                  /** Operation timed out */
        STATUS_UNAUTHORIZED,             /** Unauthorized */
        STATUS_INVALID_PARAM,            /** Invalid parameter */
        STATUS_OVERFLOW,                 /** Overflow */
        STATUS_UNAVAILABLE,              /** Unavailable */
        STATUS_NOT_SUPPORTED,            /** Not supported */
        STATUS_CONFLICT,                 /** Conflict (e.g., data conflict) */
        STATUS_NOT_IMPLEMENTED,          /** Feature or operation not implemented */
        STATUS_ALREADY_EXISTS,           /** Resource already exists */
        STATUS_READ_ONLY,                /** Read-only (attempt to write to read-only resource) */
        STATUS_DELETED,                  /** Resource has been deleted */
        STATUS_INSUFFICIENT_PRIVILEGES,  /** Insufficient privileges for operation */
        STATUS_AUTHENTICATION_FAILED,    /** Authentication failed */
        STATUS_BUSY,                     /** Resource is busy */
        STATUS_LOCKED,                   /** Resource is locked */
        STATUS_UNREACHABLE,              /** Resource is unreachable (e.g., network issue) */
        STATUS_INVALID_STATE,            /** Invalid state for operation */
        STATUS_FILE_ERROR,               /** File-related error (e.g., open, read, write) */
        STATUS_MEMORY_ERROR,
        STATUS_INVALID_ARGUMENT
} status_t;

#endif /* STATUS_ENUM_H */
